package com.mmall.pay.param;

import lombok.Data;
import lombok.EqualsAndHashCode;

import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotNull;

/**
 * @author gg
 * @version CreateOrderParam.java, v 0.1 2019-05-17 17:26 gg
 */
@Data
@EqualsAndHashCode(callSuper = true)
public class CreateOrderParam extends MmallPayConfigParam{

    /**
     * 支付内容,相当于备注
     */
    private String body;

    /**
     * 订单号，自己的订单号
     */
    @NotBlank(message = "订单号不能为空")
    private String outTradeNo;

    /**
     * 字段名：总金额.
     * 变量名：total_fee
     * 类型：Int
     * 描述：订单总金额，单位为分，详见支付金额
     */
    @NotNull(message = "金额不能为空")
    private Integer totalFee;

    /**
     * 备注： 公网IP，需要前端的公网IP
     * 字段名：终端IP.
     * 变量名：spbill_create_ip
     * 是否必填：是
     * 类型：String(16)
     * 示例值：123.12.12.123
     * *描述：APP和网页支付提交用户端ip，Native支付填调用微信支付API的机器IP。
     */
    private String ip;


    /**
     * 备注：回调的接口或者URL
     * 回调地址
     */
    @NotBlank(message = "回调地址不能为空")
    private String notifyUrl;

    private String returnUrl;

}